Gesture Controlled Robot একটি আকর্ষণীয় এবং প্রযুক্তিগত প্রোজেক্ট যা ইউজারের হাতের ইশারার মাধ্যমে একটি রোবটকে নিয়ন্ত্রণ করতে সক্ষম। এই প্রকল্পে সাধারণত Accelerometer বা Gyroscope সেন্সর ব্যবহার করা হয়, যা রোবটের চলাচল নির্দেশ করে। Arduino বোর্ডের সাহায্যে এই প্রকল্পটি তৈরি করা হয়।
MPU6050 ব্যবহার করে রোবটের নিয়ন্ত্রণের জন্য নিচের কোডটি দেওয়া হলো:
#include <Wire.h>
#include <MPU6050.h>
MPU6050 mpu;
// Motor Driver Pins
const int motorA1 = 8;
const int motorA2 = 9;
const int motorB1 = 10;
const int motorB2 = 11;
void setup() {
Serial.begin(9600);
Wire.begin();
mpu.initialize();
pinMode(motorA1, OUTPUT);
pinMode(motorA2, OUTPUT);
pinMode(motorB1, OUTPUT);
pinMode(motorB2, OUTPUT);
}
void loop() {
// MPU6050 থেকে ডেটা পড়া
int16_t ax, ay, az;
mpu.getAcceleration(&ax, &ay, &az);
// হাতের ইশারা অনুযায়ী রোবট নিয়ন্ত্রণ
if (ay > 20000) { // সামনে ইশারা
forward();
} else if (ay < -20000) { // পিছনে ইশারা
backward();
} else if (ax > 20000) { // ডানে ইশারা
turnRight();
} else if (ax < -20000) { // বামে ইশারা
turnLeft();
} else { // কোনো নির্দেশনা নেই
stop();
}
delay(100);
}
void forward() {
digitalWrite(motorA1, HIGH);
digitalWrite(motorA2, LOW);
digitalWrite(motorB1, HIGH);
digitalWrite(motorB2, LOW);
}
void backward() {
digitalWrite(motorA1, LOW);
digitalWrite(motorA2, HIGH);
digitalWrite(motorB1, LOW);
digitalWrite(motorB2, HIGH);
}
void turnRight() {
digitalWrite(motorA1, HIGH);
digitalWrite(motorA2, LOW);
digitalWrite(motorB1, LOW);
digitalWrite(motorB2, LOW);
}
void turnLeft() {
digitalWrite(motorA1, LOW);
digitalWrite(motorA2, LOW);
digitalWrite(motorB1, HIGH);
digitalWrite(motorB2, LOW);
}
void stop() {
digitalWrite(motorA1, LOW);
digitalWrite(motorA2, LOW);
digitalWrite(motorB1, LOW);
digitalWrite(motorB2, LOW);
}
এই প্রকল্পটি আপনাকে IoT এবং রোবটিক্সের মৌলিক ধারণা দিতে পারে, এবং এটি আপনার হাতে কাজ করার দক্ষতা বৃদ্ধি করবে। Gesture Controlled Robot একটি চিত্তাকর্ষক প্রকল্প, যা বাস্তব সময়ে আপনার হাতের ইশারার উপর ভিত্তি করে রোবটের চলাচল নিয়ন্ত্রণ করতে সক্ষম।
common.read_more